home *** CD-ROM | disk | FTP | other *** search
Text File | 1980-01-01 | 24.5 KB | 1,613 lines |
-
- ** THIS IS AN EARLY STAGE VERSION OF A ZOOMBALL RUTINE.
- ** AT THIS STAGE THERE IS ANOUGH FREE RASTERTIME, TO ADD
- ** TWO MORE ZOOMBALL. THE RUTINE CAN EASILY BE OPTIMIZED MORE.
- ** CODED BY CRADON/MATRIX (ASM-ONE FORMAT)
-
- *******************************************************************************
-
- SECTION MAIN,CODE_F
-
- START MOVEM.L D0-A6,-(A7)
- MOVE.W $DFF01C,INTENA
- MOVE.W $DFF002,DMACON
- MOVE.W $DFF010,ADKCON
- MOVE.W #%0111111111111111,$DFF096
- MOVE.W #%0111111111111111,$DFF09A
- MOVE.W #%0111111111111111,$DFF09C
- MOVE.W #$0000,$DFF180
- MOVE.L $6C,OLDIRQ
- MOVE.L #MYIRQ,$6C
- JSR INITCIR
- JSR COPYCIR
- JSR INITCOP
- MOVE.W #%1000001111000000,$DFF096
- MOVE.W #%1100000000110000,$DFF09A
- LOOP BTST #6,$BFE001
- BNE.B LOOP
- ENDE MOVE.W #%0111111111111111,$DFF096
- MOVE.W #%0111111111111111,$DFF09A
- MOVE.W #%0111111111111111,$DFF09C
- MOVE.L OLDIRQ,$00006C
- MOVE.W DMACON,D0
- OR.W #$8000,D0
- MOVE.W D0,$DFF096
- MOVE.W ADKCON,D0
- OR.W #$8000,D0
- MOVE.W D0,$DFF09E
- MOVE.W INTENA,D0
- OR.W #$C000,D0
- MOVE.W D0,$DFF09A
- CLR.W $DFF088
- MOVEM.L (A7)+,D0-A6
- RTS
-
- ** CREATE CIRKEL TABLE ********************************************************
-
- ELEMENTS = 400
- RADIUS = 87
- STARTX = 87
-
- INITCIR MOVE.W #STARTX,D1
- MOVE.W #STARTX,D2
- LEA.L TABLE,A0
- LEA.L TABLE,A1
- ADD.L #STARTX*2*2,A1
- LOOPCIR MOVE.W #RADIUS*RADIUS,D0
- MOVE.W D2,D1
- MULS D1,D1
- SUB.W D1,D0
- BSR.S SQR ; SQR(R²-X²)
- MOVE.W D0,(A0)+
- MOVE.W D0,-(A1)
- SUBQ.W #1,D2
- BNE.B LOOPCIR
- RTS
- SQR TST.W D0
- BEQ.S .EXIT
- MOVE.L D1,-(SP)
- MOVE.W D0,D1
- CMP.W #64,D1
- BHI.B .SQR1
- LSR.W #3,D0
- ADDQ.W #2,D0
- BRA.S .SQR4
- .SQR1 CMP.W #1024,D1
- BHI.S .SQR2
- LSR.W #5,D0
- ADDQ.W #8,D0
- BRA.S .SQR4
- .SQR2 CMP.W #8192,D1
- BHI.S .SQR3
- LSR.W #7,D0
- ADD.W #32,D0
- BRA.S .SQR4
- .SQR3 LSR.W #8,D0
- CMP.W #32767,D1
- BHI.S .SQR4
- ADD.W #64,D0
- .SQR4 EXT.L D1
- DIVU D0,D1
- ADD.W D1,D0
- LSR.W #1,D0
- MOVE.L (SP)+,D1
- .EXIT RTS
-
- ** MAKE A TABLE FOR EACH ZOOM VALUE *******************************************
-
- COPYCIR LEA.L TABLE(PC),A0
- LEA.L REPLICA(PC),A1
- MOVEQ #0,D0 ; ZOOM
- MOVE.W #87,D4
- CGLOBAL ADDQ.W #1,D0
- MOVE.W #RADIUS*256,D2
- DIVU D0,D2
- EXT.L D2
- MOVE.W #2*87,D3
- CLOOP MOVE.W (A0)+,D1
- LSL.W #8,D1
- DIVU D2,D1
- MULU #24,D1
- MOVE.W D1,(A1)+
- SUBQ.W #1,D3
- BNE CLOOP
- LEA.L TABLE,A0
- SUBQ.W #1,D4
- BNE CGLOBAL
- RTS
-
- ** REALTIME VECTOR ZOOM BALLS *************************************************
-
- VECTOR JSR ANGLES
-
- MOVE.W X1,D0
- MOVE.W Y1,D1
- MOVE.W Z1,D2
- MOVE.L SCREEN_ADRESS,A1
- move.l a1,a5
- SUB.W XCENTER(PC),D0
- SUB.W YCENTER(PC),D1
- SUB.W ZCENTER(PC),D2
- BSR.W ROTATE
- ADD.W ZCENTER(PC),D2
- JSR CONVERT
- ADD.W XCENTER(PC),D0
- ADD.W YCENTER(PC),D1
- MOVE.W D0,SAFEX
- MOVE.W D1,SAFEY
- SUB.W #90,D0
- EXT.L D2
- DIVU #7,D2
- MOVE.W #88,D3
- SUB.W D2,D3
- MOVE.W D3,ZOOM
- JSR BALL
- JSR CLRTAIL
-
- MOVE.W X2,D0
- MOVE.W Y2,D1
- MOVE.W Z2,D2
- MOVE.L SCREEN_ADRESS,A1
- ADD.L #[336/8*256],A1
- move.l a1,a5
- SUB.W XCENTER(PC),D0
- SUB.W YCENTER(PC),D1
- SUB.W ZCENTER(PC),D2
- BSR.W ROTATE
- ADD.W ZCENTER(PC),D2
- JSR CONVERT
- ADD.W XCENTER(PC),D0
- ADD.W YCENTER(PC),D1
- MOVE.W D0,SAFEX
- MOVE.W D1,SAFEY
- SUB.W #90,D0
- EXT.L D2
- DIVU #7,D2
- MOVE.W #88,D3
- SUB.W D2,D3
- MOVE.W D3,ZOOM
- JSR BALL
- JSR CLRTAIL
-
- MOVE.W X3,D0
- MOVE.W Y3,D1
- MOVE.W Z3,D2
- MOVE.L SCREEN_ADRESS,A1
- ADD.L #2*[336/8*256],A1
- move.l a1,a5
- SUB.W XCENTER(PC),D0
- SUB.W YCENTER(PC),D1
- SUB.W ZCENTER(PC),D2
- BSR.W ROTATE
- ADD.W ZCENTER(PC),D2
- JSR CONVERT
- ADD.W XCENTER(PC),D0
- ADD.W YCENTER(PC),D1
- MOVE.W D0,SAFEX
- MOVE.W D1,SAFEY
- SUB.W #90,D0
- EXT.L D2
- DIVU #7,D2
- MOVE.W #88,D3
- SUB.W D2,D3
- MOVE.W D3,ZOOM
- JSR BALL
- JSR CLRTAIL
-
- MOVE.W X4,D0
- MOVE.W Y4,D1
- MOVE.W Z4,D2
- MOVE.L SCREEN_ADRESS,A1
- ADD.L #3*[336/8*256],A1
- move.l a1,a5
- SUB.W XCENTER(PC),D0
- SUB.W YCENTER(PC),D1
- SUB.W ZCENTER(PC),D2
- BSR.W ROTATE
- ADD.W ZCENTER(PC),D2
- JSR CONVERT
- ADD.W XCENTER(PC),D0
- ADD.W YCENTER(PC),D1
- MOVE.W D0,SAFEX
- MOVE.W D1,SAFEY
- SUB.W #90,D0
- EXT.L D2
- DIVU #7,D2
- MOVE.W #88,D3
- SUB.W D2,D3
- MOVE.W D3,ZOOM
- JSR BALL
- JSR CLRTAIL
-
- RTS
-
- ** BLIT BALL ******************************************************************
-
- BALL SUB.W #8,D1
- ADD.W #15,D0
-
- MOVE.W #%0000100111110000,D6
- TST.W D0
- BGE.B .OK
- MOVEQ #0,D0
- .OK MOVE.W D0,D2
- EXT.L D2
- DIVU #16,D2
- MOVE.W D2,D0
- SWAP D2
- ROR.W #4,D2
- AND.W #$F000,D2
- OR.W D2,D6
- MULU #2,D0
- ADD.W D0,A1
- MULU #42,D1
- ADD.L D1,A1
- MOVEQ #0,D0
- MOVEQ #0,D2
- MOVEQ #0,D3
- MOVE.W ZOOM,D0
- LSL.W #1,D0 ; D0 = 2*RADIUS = HIGHT
- MOVE.W #RADIUS*256,D2
- ; tst.w zoom
- ; beq null
- DIVU ZOOM,D2
- null EXT.L D2 ; D2 = MAX BALL-DATA OFFSET
- MOVE.W D2,D3
- LSL.W #1,D3 ; D3 = TABLE FACTOR
- LEA.L BALLDAT,A0 ; BLIT FIRST LINE WITH ALL SETTINGS
- JSR BLTLINE
- SUBQ.W #1,D0
- LEA.L REPLICA,A2
- MOVE.W ZOOM,D7
- MULU #2*2*87,D7
- ADD.W D7,A2
-
- MOVE.L #$DFF000,A4
- MOVEQ #0,D5
- .BLOOP LEA.L BALLDAT,A0
- ADD.L D3,D5
- MOVE.L D5,D4
- LSR.L #8,D4
- BCLR #0,D4 ; ONLY EVEN ADRESSES
- EXT.L D4
- MOVE.W (A2,D4.W),D1 ; D1 = SINUS
- ADD.W D1,A0 ; A0 = POINT TO BALL LINE
- BSR.W BLTFAST ; BLIT LINE FAST
- SUBQ.W #1,D0
- BNE.B .BLOOP
- RTS
-
- ** BLIT BALL ******************************************************************
-
- BLTLINE BTST #14,$DFF002
- BNE.B BLTLINE
- MOVE.W D6,$DFF040 ; A SHIFT + MINTERM
- MOVE.W #%1111111111111111,$DFF044
- MOVE.W #%1111111111111111,$DFF046
- MOVE.L A0,$DFF050 ; SOURCE A
- MOVE.L A1,$DFF054 ; DESTINATION
- MOVE.W #00,$DFF064 ; MODULO A
- MOVE.W #18,$DFF066 ; MODULO D
- MOVE.W #[1*64+192/16],$DFF058
- RTS
-
- BLTFAST BTST #14,$2(A4)
- BNE.B BLTFAST
- MOVE.L A0,$50(A4)
- MOVE.W #[1*64+192/16],$58(A4)
- RTS
-
-
- ** CLEAR BALL TAIL ************************************************************
-
- CLRTAIL MOVEM.L D0-A6,-(A7)
-
- ; move.w #$0fff,$dff180
-
- WAIT2 BTST #14,$DFF002 ; CLEAR BUTTOM TAIL
- BNE.S WAIT2
- MOVE.W #$0100,$DFF040
- MOVE.W #$0000,$DFF042
- MOVE.L #$FFFFFFFF,$DFF044
- ; MOVE.L A0,$DFF054 ; DEST = CONTINUE FROM BUTTOM OF BALL
- MOVE.W #0,$DFF066
- MOVE.W #[20*64+336/16],$DFF058
- MOVE.W SAFEX,D0
- MOVE.W SAFEY,D1
- SUB.W #30,D1
- TST.W D1
- BHI OK2
- ; MOVE.W #0,D1
- OK2 MULU #42,D1
- ADD.W D1,A5
- WAIT1 BTST #14,$DFF002 ; CLEAR TOP TAIL
- BNE.S WAIT1
- MOVE.W #$0100,$DFF040
- MOVE.W #$0000,$DFF042
- MOVE.L #$FFFFFFFF,$DFF044
- MOVE.L A5,$DFF054
- MOVE.W #0,$DFF066
- MOVE.W #[23*64+336/16],$DFF058
-
- ; move.w #$0000,$dff180
-
- OUT MOVEM.L (A7)+,D0-A6
- RTS
-
- ** ROTATE *********************************************************************
-
- ROTATE LEA.L SIN_TABLE,A2
- LEA.L COS_TABLE,A3
- MOVE.W XVINKEL(PC),D5
- MOVE.W YVINKEL(PC),D6
- MOVE.W ZVINKEL(PC),D7
- LSL.W #1,D5
- LSL.W #1,D6
- LSL.W #1,D7
- MOVE.W (A3,D5.W),D3
- MOVE.W (A2,D5.W),D4
- MULS D1,D3
- MULS D2,D4
- SUB.L D4,D3
- LSL.L #2,D3
- MOVE.L D3,Y
- MOVE.W (A2,D5.W),D3
- MOVE.W (A3,D5.W),D4
- MULS D1,D3
- MULS D2,D4
- ADD.L D4,D3
- LSL.L #2,D3
- MOVE.L D3,Z
- MOVE.W (A3,D6.W),D3
- MOVE.W (A2,D6.W),D4
- MULS D0,D3
- MULS Z(PC),D4
- SUB.L D4,D3
- LSL.L #2,D3
- MOVE.L D3,X
- MOVE.W (A2,D6.W),D2
- MOVE.W (A3,D6.W),D4
- MULS D0,D2
- MULS Z(PC),D4
- ADD.L D4,D2
- LSL.L #2,D2
- SWAP D2
- EXT.L D2
- MOVE.W (A3,D7.W),D0
- MOVE.W (A2,D7.W),D4
- MULS X(PC),D0
- MULS Y(PC),D4
- SUB.L D4,D0
- LSL.L #2,D0
- SWAP D0
- EXT.L D0
- MOVE.W (A2,D7.W),D1
- MOVE.W (A3,D7.W),D3
- MULS X(PC),D1
- MULS Y(PC),D3
- ADD.L D3,D1
- LSL.L #2,D1
- SWAP D1
- EXT.L D1
- RTS
-
- ** CONVERT POINT FROM 3D TO 2D ************************************************
-
- CONVERT MULS ZOOMB(PC),D0
- MULS ZOOMB(PC),D1
- DIVS D2,D0
- DIVS D2,D1
- RTS
-
- ** CLACULATE NEW VIEW ANGLE ***************************************************
-
- ANGLES MOVE.W YDELTA(PC),D0
- ADD.W D0,YVINKEL
- CMP.W #512,YVINKEL
- BLT.B XANGLE
- SUB.W #512,YVINKEL
- XANGLE MOVE.W XDELTA(PC),D0
- ADD.W D0,XVINKEL
- CMP.W #512,XVINKEL
- BLT.B ZANGLE
- SUB.W #512,XVINKEL
- ZANGLE MOVE.W ZDELTA(PC),D0
- ADD.W D0,ZVINKEL
- CMP.W #512,ZVINKEL
- BLT.B ANGLOUT
- SUB.W #512,ZVINKEL
- ANGLOUT RTS
-
- ** FLIP BETWEEN FRAMESBUFFERS *************************************************
-
- FLIP_SCREEN
- CMP.L #SCREEN1,SCREEN_ADRESS
- BEQ.S FLIP_TO_SCREEN2
- LEA.L PLANES,A0
- MOVE.L #SCREEN2,D0
- MOVE.W D0,6(A0)
- SWAP D0
- MOVE.W D0,2(A0)
- MOVE.L #SCREEN2+[336/8*256],D0
- MOVE.W D0,14(A0)
- SWAP D0
- MOVE.W D0,10(A0)
- MOVE.L #SCREEN2+2*[336/8*256],D0
- MOVE.W D0,22(A0)
- SWAP D0
- MOVE.W D0,18(A0)
- MOVE.L #SCREEN2+3*[336/8*256],D0
- MOVE.W D0,30(A0)
- SWAP D0
- MOVE.W D0,26(A0)
- MOVE.L #SCREEN1,SCREEN_ADRESS
- RTS
- FLIP_TO_SCREEN2
- LEA.L PLANES,A0
- MOVE.L #SCREEN1,D0
- MOVE.W D0,6(A0)
- SWAP D0
- MOVE.W D0,2(A0)
- MOVE.L #SCREEN1+[336/8*256],D0
- MOVE.W D0,14(A0)
- SWAP D0
- MOVE.W D0,10(A0)
- MOVE.L #SCREEN1+2*[336/8*256],D0
- MOVE.W D0,22(A0)
- SWAP D0
- MOVE.W D0,18(A0)
- MOVE.L #SCREEN1+3*[336/8*256],D0
- MOVE.W D0,30(A0)
- SWAP D0
- MOVE.W D0,26(A0)
- MOVE.L #SCREEN2,SCREEN_ADRESS
- RTS
-
- ** INTERRUPT ******************************************************************
-
- MYIRQ MOVEM.L D0-A6,-(A7)
- MOVE.W #$0000,$DFF180
- JSR VECTOR
- JSR FLIP_SCREEN
- ; MOVE.W #$0024,$DFF180
- MOVE.W #$20,$DFF09C
- MOVEM.L (A7)+,D0-A6
- RTE
-
- ** DATA ***********************************************************************
-
- SAFEX DC.W 0
- SAFEY DC.W 0
- SCREEN_ADRESS DC.L SCREEN1
- OLDIRQ DC.L 0
- INTENA DC.W 0
- DMACON DC.W 0
- ADKCON DC.W 0
- ZOOM DC.W 88 ; OUT OF ORDER! DON'T TOUCH
- ZOOMB DC.W 105
- X1 DC.W 220
- Y1 DC.W 170
- Z1 DC.W 194
- X2 DC.W 40
- Y2 DC.W 40
- Z2 DC.W 510
- X3 DC.W 40
- Y3 DC.W 40
- Z3 DC.W 224
- X4 DC.W 170
- Y4 DC.W 170
- Z4 DC.W 520
- Y DC.L 0
- Z DC.L 0
- X DC.L 0
- XCENTER DC.W 159
- YCENTER DC.W 80
- ZCENTER DC.W 377
- XDELTA DC.W 4
- YDELTA DC.W 6
- ZDELTA DC.W 6
- XVINKEL DC.W 0
- YVINKEL DC.W 0
- ZVINKEL DC.W 0
- TABLE BLK.W ELEMENTS,$0000
- REPLICA BLK.W 70000,$0000
-
- ** INITIALIZE COPPERLIST #2 ***************************************************
-
- INITCOP MOVE.L #SCREEN1,D0
- LEA.L PLANES,A0
- MOVE.W D0,6(A0)
- SWAP D0
- MOVE.W D0,2(A0)
- MOVE.L #SCREEN1+[336/8*256],D0
- LEA.L PLANES2,A0
- MOVE.W D0,6(A0)
- SWAP D0
- MOVE.W D0,2(A0)
- MOVE.L #SCREEN1+2*[336/8*256],D0
- LEA.L PLANES3,A0
- MOVE.W D0,6(A0)
- SWAP D0
- MOVE.W D0,2(A0)
- MOVE.L #SCREEN1+3*[336/8*256],D0
- LEA.L PLANES4,A0
- MOVE.W D0,6(A0)
- SWAP D0
- MOVE.W D0,2(A0)
- MOVE.L #COPPER,D0
- LEA.L RESTART,A0
- MOVE.W D0,6(A0)
- SWAP D0
- MOVE.W D0,2(A0)
- MOVE.L #COPPER,$DFF084
- MOVE.B #$00,$DFF08A
- RTS
-
- ** COPPERLIST #2 *************************************************************
-
- SECTION CHIPDATA,DATA_C
-
- COPPER DC.W $0106,$0000,$01FC,$0000
- DC.W $008E,115+(44*256)
- DC.W $0090,(457-256)+(300-256)*256
- DC.W $0092,(115/2-8)
- DC.W $0094,(115/2-8)+(8*(21-1))
- DC.W $0102,00000,$0104,$0000
- DC.W $0108,$0000,$010A,$0000
- DC.W $0106,$0000,$01FC,$0000
-
- DC.W $0182,$0F04
- DC.W $0184,$00F0,$0186,$0FF0
- DC.W $0188,$000F,$018A,$0A0A
- DC.W $018C,$0C90,$018E,$00F0
- DC.W $0190,$053F,$0192,$0940
- DC.W $0194,$06A6,$0196,$0AF0
- DC.W $0198,$0AFA,$019A,$0A0A
- DC.W $019C,$0FAA,$019E,$0AF0
-
- PLANES DC.W $00E0,$0000,$00E2,$0000
- PLANES2 DC.W $00E4,$0000,$00E6,$0000
- PLANES3 DC.W $00E8,$0000,$00EA,$0000
- PLANES4 DC.W $00EC,$0000,$00EE,$0000
- DC.W $0100,$4200,$FFE1,$FFFE
- DC.W $3101,$FFFE,$0100,$0200
- DC.W $0180,$0224,$0182,$0224
- RESTART DC.W $0084,$0000,$0086,$0000
- DC.W $008A,$0000,$FFFF,$FFFE ; FORCE RESTART
-
- *******************************************************************************
-
- BALLDAT INCBIN "DH0:CODING/SOURCE/VECTOR/BALL.BIT" ; 176 - 192
- SAFETY BLK.B [336/8*60],0
- SCREEN1 BLK.B [4*356/8*256],$00
- SCREEN2 BLK.B [4*356/8*256],$00
- SAFETY2 BLK.B [336/8*60],0
-
- SIN_TABLE
- DC.W 0
- DC.W 201
- DC.W 402
- DC.W 603
- DC.W 803
- DC.W 1004
- DC.W 1205
- DC.W 1405
- DC.W 1605
- DC.W 1805
- DC.W 2005
- DC.W 2204
- DC.W 2404
- DC.W 2602
- DC.W 2801
- DC.W 2998
- DC.W 3196
- DC.W 3393
- DC.W 3589
- DC.W 3785
- DC.W 3980
- DC.W 4175
- DC.W 4369
- DC.W 4563
- DC.W 4756
- DC.W 4948
- DC.W 5139
- DC.W 5329
- DC.W 5519
- DC.W 5708
- DC.W 5896
- DC.W 6083
- DC.W 6269
- DC.W 6455
- DC.W 6639
- DC.W 6822
- DC.W 7005
- DC.W 7186
- DC.W 7366
- DC.W 7545
- DC.W 7723
- DC.W 7900
- DC.W 8075
- DC.W 8249
- DC.W 8423
- DC.W 8594
- DC.W 8765
- DC.W 8934
- DC.W 9102
- DC.W 9268
- DC.W 9434
- DC.W 9597
- DC.W 9759
- DC.W 9920
- DC.W 10079
- DC.W 10237
- DC.W 10393
- DC.W 10548
- DC.W 10701
- DC.W 10853
- DC.W 11002
- DC.W 11150
- DC.W 11297
- DC.W 11442
- DC.W 11585
- DC.W 11726
- DC.W 11866
- DC.W 12003
- DC.W 12139
- DC.W 12273
- DC.W 12406
- DC.W 12536
- DC.W 12665
- DC.W 12791
- DC.W 12916
- DC.W 13038
- DC.W 13159
- DC.W 13278
- DC.W 13395
- DC.W 13510
- DC.W 13622
- DC.W 13733
- DC.W 13842
- DC.W 13948
- DC.W 14053
- DC.W 14155
- DC.W 14255
- DC.W 14353
- DC.W 14449
- DC.W 14543
- DC.W 14634
- DC.W 14723
- DC.W 14810
- DC.W 14895
- DC.W 14978
- DC.W 15058
- DC.W 15136
- DC.W 15212
- DC.W 15286
- DC.W 15357
- DC.W 15426
- DC.W 15492
- DC.W 15557
- DC.W 15618
- DC.W 15678
- DC.W 15735
- DC.W 15790
- DC.W 15842
- DC.W 15892
- DC.W 15940
- DC.W 15985
- DC.W 16028
- DC.W 16069
- DC.W 16107
- DC.W 16142
- DC.W 16175
- DC.W 16206
- DC.W 16234
- DC.W 16260
- DC.W 16284
- DC.W 16305
- DC.W 16323
- DC.W 16339
- DC.W 16353
- DC.W 16364
- DC.W 16372
- DC.W 16379
- DC.W 16382
- DC.W 16384
- DC.W 16382
- DC.W 16379
- DC.W 16372
- DC.W 16364
- DC.W 16353
- DC.W 16339
- DC.W 16323
- DC.W 16305
- DC.W 16284
- DC.W 16260
- DC.W 16234
- DC.W 16206
- DC.W 16175
- DC.W 16142
- DC.W 16107
- DC.W 16069
- DC.W 16028
- DC.W 15985
- DC.W 15940
- DC.W 15892
- DC.W 15842
- DC.W 15790
- DC.W 15735
- DC.W 15678
- DC.W 15618
- DC.W 15557
- DC.W 15492
- DC.W 15426
- DC.W 15357
- DC.W 15286
- DC.W 15212
- DC.W 15136
- DC.W 15058
- DC.W 14978
- DC.W 14895
- DC.W 14810
- DC.W 14723
- DC.W 14634
- DC.W 14543
- DC.W 14449
- DC.W 14353
- DC.W 14255
- DC.W 14155
- DC.W 14053
- DC.W 13948
- DC.W 13842
- DC.W 13733
- DC.W 13622
- DC.W 13510
- DC.W 13395
- DC.W 13278
- DC.W 13159
- DC.W 13038
- DC.W 12916
- DC.W 12791
- DC.W 12665
- DC.W 12536
- DC.W 12406
- DC.W 12273
- DC.W 12139
- DC.W 12003
- DC.W 11866
- DC.W 11726
- DC.W 11585
- DC.W 11442
- DC.W 11297
- DC.W 11150
- DC.W 11002
- DC.W 10853
- DC.W 10701
- DC.W 10548
- DC.W 10393
- DC.W 10237
- DC.W 10079
- DC.W 9920
- DC.W 9759
- DC.W 9597
- DC.W 9434
- DC.W 9268
- DC.W 9102
- DC.W 8934
- DC.W 8765
- DC.W 8594
- DC.W 8423
- DC.W 8249
- DC.W 8075
- DC.W 7900
- DC.W 7723
- DC.W 7545
- DC.W 7366
- DC.W 7186
- DC.W 7005
- DC.W 6822
- DC.W 6639
- DC.W 6455
- DC.W 6269
- DC.W 6083
- DC.W 5896
- DC.W 5708
- DC.W 5519
- DC.W 5329
- DC.W 5139
- DC.W 4948
- DC.W 4756
- DC.W 4563
- DC.W 4369
- DC.W 4175
- DC.W 3980
- DC.W 3785
- DC.W 3589
- DC.W 3393
- DC.W 3196
- DC.W 2998
- DC.W 2801
- DC.W 2602
- DC.W 2404
- DC.W 2204
- DC.W 2005
- DC.W 1805
- DC.W 1605
- DC.W 1405
- DC.W 1205
- DC.W 1004
- DC.W 803
- DC.W 603
- DC.W 402
- DC.W 201
- DC.W -1
- DC.W -202
- DC.W -403
- DC.W -604
- DC.W -804
- DC.W -1005
- DC.W -1206
- DC.W -1406
- DC.W -1606
- DC.W -1806
- DC.W -2006
- DC.W -2205
- DC.W -2405
- DC.W -2603
- DC.W -2802
- DC.W -2999
- DC.W -3197
- DC.W -3394
- DC.W -3590
- DC.W -3786
- DC.W -3981
- DC.W -4176
- DC.W -4370
- DC.W -4564
- DC.W -4757
- DC.W -4949
- DC.W -5140
- DC.W -5330
- DC.W -5520
- DC.W -5709
- DC.W -5897
- DC.W -6084
- DC.W -6270
- DC.W -6456
- DC.W -6640
- DC.W -6823
- DC.W -7006
- DC.W -7187
- DC.W -7367
- DC.W -7546
- DC.W -7724
- DC.W -7901
- DC.W -8076
- DC.W -8250
- DC.W -8424
- DC.W -8595
- DC.W -8766
- DC.W -8935
- DC.W -9103
- DC.W -9269
- DC.W -9435
- DC.W -9598
- DC.W -9760
- DC.W -9921
- DC.W -10080
- DC.W -10238
- DC.W -10394
- DC.W -10549
- DC.W -10702
- DC.W -10854
- DC.W -11003
- DC.W -11151
- DC.W -11298
- DC.W -11443
- DC.W -11586
- DC.W -11727
- DC.W -11867
- DC.W -12004
- DC.W -12140
- DC.W -12274
- DC.W -12407
- DC.W -12537
- DC.W -12666
- DC.W -12792
- DC.W -12917
- DC.W -13039
- DC.W -13160
- DC.W -13279
- DC.W -13396
- DC.W -13511
- DC.W -13623
- DC.W -13734
- DC.W -13843
- DC.W -13949
- DC.W -14054
- DC.W -14156
- DC.W -14256
- DC.W -14354
- DC.W -14450
- DC.W -14544
- DC.W -14635
- DC.W -14724
- DC.W -14811
- DC.W -14896
- DC.W -14979
- DC.W -15059
- DC.W -15137
- DC.W -15213
- DC.W -15287
- DC.W -15358
- DC.W -15427
- DC.W -15493
- DC.W -15558
- DC.W -15619
- DC.W -15679
- DC.W -15736
- DC.W -15791
- DC.W -15843
- DC.W -15893
- DC.W -15941
- DC.W -15986
- DC.W -16029
- DC.W -16070
- DC.W -16108
- DC.W -16143
- DC.W -16176
- DC.W -16207
- DC.W -16235
- DC.W -16261
- DC.W -16285
- DC.W -16306
- DC.W -16324
- DC.W -16340
- DC.W -16354
- DC.W -16365
- DC.W -16373
- DC.W -16380
- DC.W -16383
- DC.W -16384
- DC.W -16383
- DC.W -16380
- DC.W -16373
- DC.W -16365
- DC.W -16354
- DC.W -16340
- DC.W -16324
- DC.W -16306
- DC.W -16285
- DC.W -16261
- DC.W -16235
- DC.W -16207
- DC.W -16176
- DC.W -16143
- DC.W -16108
- DC.W -16070
- DC.W -16029
- DC.W -15986
- DC.W -15941
- DC.W -15893
- DC.W -15843
- DC.W -15791
- DC.W -15736
- DC.W -15679
- DC.W -15619
- DC.W -15558
- DC.W -15493
- DC.W -15427
- DC.W -15358
- DC.W -15287
- DC.W -15213
- DC.W -15137
- DC.W -15059
- DC.W -14979
- DC.W -14896
- DC.W -14811
- DC.W -14724
- DC.W -14635
- DC.W -14544
- DC.W -14450
- DC.W -14354
- DC.W -14256
- DC.W -14156
- DC.W -14054
- DC.W -13949
- DC.W -13843
- DC.W -13734
- DC.W -13623
- DC.W -13511
- DC.W -13396
- DC.W -13279
- DC.W -13160
- DC.W -13039
- DC.W -12917
- DC.W -12792
- DC.W -12666
- DC.W -12537
- DC.W -12407
- DC.W -12274
- DC.W -12140
- DC.W -12004
- DC.W -11867
- DC.W -11727
- DC.W -11586
- DC.W -11443
- DC.W -11298
- DC.W -11151
- DC.W -11003
- DC.W -10854
- DC.W -10702
- DC.W -10549
- DC.W -10394
- DC.W -10238
- DC.W -10080
- DC.W -9921
- DC.W -9760
- DC.W -9598
- DC.W -9435
- DC.W -9269
- DC.W -9103
- DC.W -8935
- DC.W -8766
- DC.W -8595
- DC.W -8424
- DC.W -8250
- DC.W -8076
- DC.W -7901
- DC.W -7724
- DC.W -7546
- DC.W -7367
- DC.W -7187
- DC.W -7006
- DC.W -6823
- DC.W -6640
- DC.W -6456
- DC.W -6270
- DC.W -6084
- DC.W -5897
- DC.W -5709
- DC.W -5520
- DC.W -5330
- DC.W -5140
- DC.W -4949
- DC.W -4757
- DC.W -4564
- DC.W -4370
- DC.W -4176
- DC.W -3981
- DC.W -3786
- DC.W -3590
- DC.W -3394
- DC.W -3197
- DC.W -2999
- DC.W -2802
- DC.W -2603
- DC.W -2405
- DC.W -2205
- DC.W -2006
- DC.W -1806
- DC.W -1606
- DC.W -1406
- DC.W -1206
- DC.W -1005
- DC.W -804
- DC.W -604
- DC.W -403
- DC.W -202
- COS_TABLE
- DC.W 16384
- DC.W 16382
- DC.W 16379
- DC.W 16372
- DC.W 16364
- DC.W 16353
- DC.W 16339
- DC.W 16323
- DC.W 16305
- DC.W 16284
- DC.W 16260
- DC.W 16234
- DC.W 16206
- DC.W 16175
- DC.W 16142
- DC.W 16107
- DC.W 16069
- DC.W 16028
- DC.W 15985
- DC.W 15940
- DC.W 15892
- DC.W 15842
- DC.W 15790
- DC.W 15735
- DC.W 15678
- DC.W 15618
- DC.W 15557
- DC.W 15492
- DC.W 15426
- DC.W 15357
- DC.W 15286
- DC.W 15212
- DC.W 15136
- DC.W 15058
- DC.W 14978
- DC.W 14895
- DC.W 14810
- DC.W 14723
- DC.W 14634
- DC.W 14543
- DC.W 14449
- DC.W 14353
- DC.W 14255
- DC.W 14155
- DC.W 14053
- DC.W 13948
- DC.W 13842
- DC.W 13733
- DC.W 13622
- DC.W 13510
- DC.W 13395
- DC.W 13278
- DC.W 13159
- DC.W 13038
- DC.W 12916
- DC.W 12791
- DC.W 12665
- DC.W 12536
- DC.W 12406
- DC.W 12273
- DC.W 12139
- DC.W 12003
- DC.W 11866
- DC.W 11726
- DC.W 11585
- DC.W 11442
- DC.W 11297
- DC.W 11150
- DC.W 11002
- DC.W 10853
- DC.W 10701
- DC.W 10548
- DC.W 10393
- DC.W 10237
- DC.W 10079
- DC.W 9920
- DC.W 9759
- DC.W 9597
- DC.W 9434
- DC.W 9268
- DC.W 9102
- DC.W 8934
- DC.W 8765
- DC.W 8594
- DC.W 8423
- DC.W 8249
- DC.W 8075
- DC.W 7900
- DC.W 7723
- DC.W 7545
- DC.W 7366
- DC.W 7186
- DC.W 7005
- DC.W 6822
- DC.W 6639
- DC.W 6455
- DC.W 6269
- DC.W 6083
- DC.W 5896
- DC.W 5708
- DC.W 5519
- DC.W 5329
- DC.W 5139
- DC.W 4948
- DC.W 4756
- DC.W 4563
- DC.W 4369
- DC.W 4175
- DC.W 3980
- DC.W 3785
- DC.W 3589
- DC.W 3393
- DC.W 3196
- DC.W 2998
- DC.W 2801
- DC.W 2602
- DC.W 2404
- DC.W 2204
- DC.W 2005
- DC.W 1805
- DC.W 1605
- DC.W 1405
- DC.W 1205
- DC.W 1004
- DC.W 803
- DC.W 603
- DC.W 402
- DC.W 201
- DC.W -1
- DC.W -202
- DC.W -403
- DC.W -604
- DC.W -804
- DC.W -1005
- DC.W -1206
- DC.W -1406
- DC.W -1606
- DC.W -1806
- DC.W -2006
- DC.W -2205
- DC.W -2405
- DC.W -2603
- DC.W -2802
- DC.W -2999
- DC.W -3197
- DC.W -3394
- DC.W -3590
- DC.W -3786
- DC.W -3981
- DC.W -4176
- DC.W -4370
- DC.W -4564
- DC.W -4757
- DC.W -4949
- DC.W -5140
- DC.W -5330
- DC.W -5520
- DC.W -5709
- DC.W -5897
- DC.W -6084
- DC.W -6270
- DC.W -6456
- DC.W -6640
- DC.W -6823
- DC.W -7006
- DC.W -7187
- DC.W -7367
- DC.W -7546
- DC.W -7724
- DC.W -7901
- DC.W -8076
- DC.W -8250
- DC.W -8424
- DC.W -8595
- DC.W -8766
- DC.W -8935
- DC.W -9103
- DC.W -9269
- DC.W -9435
- DC.W -9598
- DC.W -9760
- DC.W -9921
- DC.W -10080
- DC.W -10238
- DC.W -10394
- DC.W -10549
- DC.W -10702
- DC.W -10854
- DC.W -11003
- DC.W -11151
- DC.W -11298
- DC.W -11443
- DC.W -11586
- DC.W -11727
- DC.W -11867
- DC.W -12004
- DC.W -12140
- DC.W -12274
- DC.W -12407
- DC.W -12537
- DC.W -12666
- DC.W -12792
- DC.W -12917
- DC.W -13039
- DC.W -13160
- DC.W -13279
- DC.W -13396
- DC.W -13511
- DC.W -13623
- DC.W -13734
- DC.W -13843
- DC.W -13949
- DC.W -14054
- DC.W -14156
- DC.W -14256
- DC.W -14354
- DC.W -14450
- DC.W -14544
- DC.W -14635
- DC.W -14724
- DC.W -14811
- DC.W -14896
- DC.W -14979
- DC.W -15059
- DC.W -15137
- DC.W -15213
- DC.W -15287
- DC.W -15358
- DC.W -15427
- DC.W -15493
- DC.W -15558
- DC.W -15619
- DC.W -15679
- DC.W -15736
- DC.W -15791
- DC.W -15843
- DC.W -15893
- DC.W -15941
- DC.W -15986
- DC.W -16029
- DC.W -16070
- DC.W -16108
- DC.W -16143
- DC.W -16176
- DC.W -16207
- DC.W -16235
- DC.W -16261
- DC.W -16285
- DC.W -16306
- DC.W -16324
- DC.W -16340
- DC.W -16354
- DC.W -16365
- DC.W -16373
- DC.W -16380
- DC.W -16383
- DC.W -16384
- DC.W -16383
- DC.W -16380
- DC.W -16373
- DC.W -16365
- DC.W -16354
- DC.W -16340
- DC.W -16324
- DC.W -16306
- DC.W -16285
- DC.W -16261
- DC.W -16235
- DC.W -16207
- DC.W -16176
- DC.W -16143
- DC.W -16108
- DC.W -16070
- DC.W -16029
- DC.W -15986
- DC.W -15941
- DC.W -15893
- DC.W -15843
- DC.W -15791
- DC.W -15736
- DC.W -15679
- DC.W -15619
- DC.W -15558
- DC.W -15493
- DC.W -15427
- DC.W -15358
- DC.W -15287
- DC.W -15213
- DC.W -15137
- DC.W -15059
- DC.W -14979
- DC.W -14896
- DC.W -14811
- DC.W -14724
- DC.W -14635
- DC.W -14544
- DC.W -14450
- DC.W -14354
- DC.W -14256
- DC.W -14156
- DC.W -14054
- DC.W -13949
- DC.W -13843
- DC.W -13734
- DC.W -13623
- DC.W -13511
- DC.W -13396
- DC.W -13279
- DC.W -13160
- DC.W -13039
- DC.W -12917
- DC.W -12792
- DC.W -12666
- DC.W -12537
- DC.W -12407
- DC.W -12274
- DC.W -12140
- DC.W -12004
- DC.W -11867
- DC.W -11727
- DC.W -11586
- DC.W -11443
- DC.W -11298
- DC.W -11151
- DC.W -11003
- DC.W -10854
- DC.W -10702
- DC.W -10549
- DC.W -10394
- DC.W -10238
- DC.W -10080
- DC.W -9921
- DC.W -9760
- DC.W -9598
- DC.W -9435
- DC.W -9269
- DC.W -9103
- DC.W -8935
- DC.W -8766
- DC.W -8595
- DC.W -8424
- DC.W -8250
- DC.W -8076
- DC.W -7901
- DC.W -7724
- DC.W -7546
- DC.W -7367
- DC.W -7187
- DC.W -7006
- DC.W -6823
- DC.W -6640
- DC.W -6456
- DC.W -6270
- DC.W -6084
- DC.W -5897
- DC.W -5709
- DC.W -5520
- DC.W -5330
- DC.W -5140
- DC.W -4949
- DC.W -4757
- DC.W -4564
- DC.W -4370
- DC.W -4176
- DC.W -3981
- DC.W -3786
- DC.W -3590
- DC.W -3394
- DC.W -3197
- DC.W -2999
- DC.W -2802
- DC.W -2603
- DC.W -2405
- DC.W -2205
- DC.W -2006
- DC.W -1806
- DC.W -1606
- DC.W -1406
- DC.W -1206
- DC.W -1005
- DC.W -804
- DC.W -604
- DC.W -403
- DC.W -202
- DC.W -1
- DC.W 201
- DC.W 402
- DC.W 603
- DC.W 803
- DC.W 1004
- DC.W 1205
- DC.W 1405
- DC.W 1605
- DC.W 1805
- DC.W 2005
- DC.W 2204
- DC.W 2404
- DC.W 2602
- DC.W 2801
- DC.W 2998
- DC.W 3196
- DC.W 3393
- DC.W 3589
- DC.W 3785
- DC.W 3980
- DC.W 4175
- DC.W 4369
- DC.W 4563
- DC.W 4756
- DC.W 4948
- DC.W 5139
- DC.W 5329
- DC.W 5519
- DC.W 5708
- DC.W 5896
- DC.W 6083
- DC.W 6269
- DC.W 6455
- DC.W 6639
- DC.W 6822
- DC.W 7005
- DC.W 7186
- DC.W 7366
- DC.W 7545
- DC.W 7723
- DC.W 7900
- DC.W 8075
- DC.W 8249
- DC.W 8423
- DC.W 8594
- DC.W 8765
- DC.W 8934
- DC.W 9102
- DC.W 9268
- DC.W 9434
- DC.W 9597
- DC.W 9759
- DC.W 9920
- DC.W 10079
- DC.W 10237
- DC.W 10393
- DC.W 10548
- DC.W 10701
- DC.W 10853
- DC.W 11002
- DC.W 11150
- DC.W 11297
- DC.W 11442
- DC.W 11585
- DC.W 11726
- DC.W 11866
- DC.W 12003
- DC.W 12139
- DC.W 12273
- DC.W 12406
- DC.W 12536
- DC.W 12665
- DC.W 12791
- DC.W 12916
- DC.W 13038
- DC.W 13159
- DC.W 13278
- DC.W 13395
- DC.W 13510
- DC.W 13622
- DC.W 13733
- DC.W 13842
- DC.W 13948
- DC.W 14053
- DC.W 14155
- DC.W 14255
- DC.W 14353
- DC.W 14449
- DC.W 14543
- DC.W 14634
- DC.W 14723
- DC.W 14810
- DC.W 14895
- DC.W 14978
- DC.W 15058
- DC.W 15136
- DC.W 15212
- DC.W 15286
- DC.W 15357
- DC.W 15426
- DC.W 15492
- DC.W 15557
- DC.W 15618
- DC.W 15678
- DC.W 15735
- DC.W 15790
- DC.W 15842
- DC.W 15892
- DC.W 15940
- DC.W 15985
- DC.W 16028
- DC.W 16069
- DC.W 16107
- DC.W 16142
- DC.W 16175
- DC.W 16206
- DC.W 16234
- DC.W 16260
- DC.W 16284
- DC.W 16305
- DC.W 16323
- DC.W 16339
- DC.W 16353
- DC.W 16364
- DC.W 16372
- DC.W 16379
- DC.W 16382
-
-